# python的方法大致可以分四类：实例方法、静态方法、类方法、特殊方法

'''
实例方法（Instance Method）：这种方法是最常见的一种方法。实例方法定义在类中，第一个参数是 self，表示调用该方法的实例对象本身。
通过实例方法，我们可以访问和修改对象的状态，以及执行各种操作。
'''
class MyClass1:

    def method(self, arg):
        # 访问 self 属性
        self.arg = arg
        # 执行其他操作


'''
静态方法（Static Method）：静态方法定义在类中，但不需要传递 self 参数。
它们通常被用于实现与该类相关的函数，但是又不依赖于任何特定的实例对象。被称为类级别的方法。
@staticmethod 装饰器用于定义静态方法
'''
class MyClass2:

    @staticmethod
    def method(arg):
        # 执行操作，无需访问对象状态
        pass


'''
类方法（Class Method）：类方法也定义在类中，但第一个参数是 cls，表示调用该方法的类本身。
类方法通常被用于实现需要使用类级别变量或者对所有该类的实例都有影响的操作
@classmethod 装饰器用于定义类方法
'''
class MyClass3:
    counter = 0

    @classmethod
    def method(cls, arg):
        cls.counter += 1
        # 执行其他操作


'''
特殊方法（Special Method）即魔法函数：特殊方法是 Python 中一种特殊的方法，用于实现类的各种特殊行为，
比如构造函数、析构函数等。这些方法都以双下划线开头和结尾，如 __init__、__del__、__str__ 等
__init__(self[, ...])：构造方法，用于初始化对象的状态、__del__(self)：析构方法，当对象被删除时自动调用。
'''
class MyClass4:

    def __init__(self, arg):
        # 初始化操作
        pass

    def __str__(self):
        # 转换为字符串的操作
        pass
